﻿/************************************************************************************
 * Copyright (c) 2016 北京大象科技有限公司 All Rights Reserved.
 *公司名称：北京大象科技有限公司
 *命名空间：ET.Framework
 *文件名：  ClassUtils.cs
 *创建人：  杜鹏
 *创建方式：自动生成工具生成
 *电子邮箱：dupeng@bjdaxiang.cn
 *QQ:       4909004
 *创建时间：2016/3/17 16:35:26
 *描述：
 *
/************************************************************************************/

using System.IO;
using System.Runtime.Serialization;
using System.Runtime.Serialization.Formatters.Binary;

namespace ET.Score.Framework
{
    /// <summary>
    /// 类，Enum常用功能函数
    /// </summary>
    public class ClassUtils
    {
        /// <summary>
        /// 深度复制对象
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="srcObj"></param>
        /// <returns></returns>
        public static T Copy<T>(T srcObj)
        {
            using (Stream objectStream = new MemoryStream())
            {   
                IFormatter formatter = new BinaryFormatter();
                formatter.Serialize(objectStream, srcObj);
                objectStream.Seek(0, SeekOrigin.Begin);
                return (T)formatter.Deserialize(objectStream);
            }
        }   

    }
}
